package com.ryan.ohos.extension.util;

/**
 * 防止重复点击
 *
 * @author wangyin
 * @since 2021/06/23
 */
public class PreventRepeatUtils {
    /**
     * 最后一次点击时间
     */
    private static long sLastClickTime = 0L;

    /**
     * 时间间隔
     */
    private static final long TIME_INTERVAL = 1000L;

    /**
     * 防止重复点击
     *
     * @param callBack 回调事件
     */
    public static void preventRepeatClick(CallBack callBack) {
        long nowTime = System.currentTimeMillis();
        if (nowTime - sLastClickTime > TIME_INTERVAL) {
            // 单次点击事件
            callBack.callBack();
            sLastClickTime = nowTime;
        }
    }

    /**
     * 回调函数
     */
    public interface CallBack {
        void callBack();
    }

}
